package com.net.oil.oilWear.contract;

import com.net.oil.base.IBaseModel;
import com.net.oil.oilWear.bean.OilWearChartBean;
import com.net.oil.oilWear.bean.OilWearInfo;

import java.util.List;

/**
 * 作者：lch
 * 时间：2019/1/20 0020:下午 13:37
 * 邮箱：245850413@qq.com
 * 说明：
 */
public interface OilWearContract {
    interface Model extends IBaseModel {

        /**
         * 获取加油计算详情
         *
         * @param carId    车辆id
         */
        void getOilWearInfo(int carId);

        /**
         * 获取加油计算详情下面的折线图
         *
         * @param carId    车辆id
         * @param selectId 筛选条件3:3个月 6:半年 12：一年
         */
        void getOilWearChartData(int carId, int selectId);
    }

    interface View {

        /**
         * 获取加油计算详情成功
         *
         * @param oilWearInfo 加油详情数据
         */
        void getOilWearInfoSuccess(OilWearInfo oilWearInfo);

        /**
         * 获取加油技术详情失败
         */
        void getOilWearInfoFailed();

        /**
         * 获取加油计算详情下面的折线图成功
         *
         * @param oilWearChartBeans 数据
         */
        void getOilWearChartDataSuccess(List<OilWearChartBean> oilWearChartBeans);

        /**
         * 获取加油计算详情下面的折线图失败
         */
        void getOilWearChartDataFailed();
    }

    interface Presenter {

        /**
         * 获取加油计算详情
         *
         * @param carId    车辆id
         */
        void getOilWearInfo(int carId);

        /**
         * 获取加油计算详情成功
         *
         * @param oilWearInfo 加油详情数据
         */
        void getOilWearInfoSuccess(OilWearInfo oilWearInfo);

        /**
         * 获取加油技术详情失败
         */
        void getOilWearInfoFailed();

        /**
         * 获取加油计算详情下面的折线图
         *
         * @param carId    车辆id
         * @param selectId 筛选条件3:3个月 6:半年 12：一年
         */
        void getOilWearChartData(int carId, int selectId);

        /**
         * 获取加油计算详情下面的折线图成功
         *
         * @param oilWearChartBeans 数据
         */
        void getOilWearChartDataSuccess(List<OilWearChartBean> oilWearChartBeans);

        /**
         * 获取加油计算详情下面的折线图失败
         */
        void getOilWearChartDataFailed();
    }
}
